package com.hzsk.lisence.entity;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * @Description :
 * @Date : 2024/8/20
 * @Author : ChenJin
 * @Version : v1.0.0
 **/
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "em_software_relation")
public class EmSoftwareRelationEntity {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column()
    private Integer id;

    /**
     * MES软件绑定关系ID
     */
    @Column(name = "software_info_id",columnDefinition = "varchar(255)  default ''  comment 'MES软件绑定关系ID'")
    private String softwareInfoId;

    /**
     * 数控系统物料编码
     */
    @Column(name = "nc_material_code", columnDefinition = "varchar(255)  default ''  comment '数控系统物料编码'")
    private String ncMaterialCode;

    /**
     * mcp物料编码
     */
    @Column(name = "mcp_material_code", columnDefinition = "varchar(255)  default ''  comment 'mcp物料编码'")
    private String mcpMaterialCode;

    /**
     * 操作系统版本
     */
    @Column(name = "os_id", columnDefinition = "Integer(11)  default null comment '操作系统版本ID'")
    private Integer osId;
    
    /**
     * 操作系统版本
     */
    @Column(name = "os_version", columnDefinition = "varchar(255)  default ''  comment '操作系统版本'")
    private String osVersion;

    /**
     * 软件版本
     */
    @Column(name = "software_id", columnDefinition = "Integer(11)  default null comment  '软件包版本'")
    private Integer softwareId;

    /**
     * 软件版本
     */
    @Column(name = "software_version", columnDefinition = "varchar(255)  default '' comment '软件包版本'")
    private String softwareVersion;

    /**
     * 分辨率
     */
    @Column(name = "resolution", columnDefinition = "varchar(255) default '' comment '分辨率'")
    private String resolution;

    /**
     * 产品类型
     */
    @Column(name = "prod_type", columnDefinition = "varchar(255) default '' comment '产品类型'")
    private String prodType;

    /**
     * 通道数
     */
    @Column(name = "channel_num", columnDefinition = "varchar(255) default null comment '通道数'")
    private String channelNum;

    /**
     * 授权清单
     */
    @Column(name = "functions", columnDefinition = "varchar(255) default '' comment '授权清单'")
    private String functions;

    /**
     * 创建时间
     */
    @Column(name = "create_time", columnDefinition = " datetime DEFAULT NULL  comment '创建时间'")
    @ApiModelProperty(value = "创建时间")
    private Timestamp createTime;

    /**
     * 更新时间
     */
    @Column(name = "update_time", columnDefinition = " datetime DEFAULT NULL  comment '更新时间'")
    @ApiModelProperty(value = "更新时间")
    private Timestamp updateTime;

    /**
     * 接口操作类型
     */
    @Transient
    private Integer operationType;
    
}
